A Coinductive Formulation of the \coinduction Theorem" by Michael and Appel

نویسنده

  • Andreas Abel
چکیده

1 Inductive Treatment of Safety In MA00] Neophytos G. Michael and Andrew W. Appel introduce machine safety for a transition relation 7 ! on the set of machine states S as follows: Safe(s) :() 8s 0 : s 7 ! s 0) 9s 00 : s 0 7 ! s 00 This expresses that a state is safe if after a nite number of transitions starting from this state there is still one more possible transition. Given an invariant Inv S, written Inv(s) for s 2 Inv, they deene the properties progress and preservation by: Prog(Inv) :() 8s: Inv(s)) 9s 0 : s 7 ! s 0 Pres(Inv) :() 8s; s 0 : Inv(s) ^ s 7 ! s 0) Inv(s 0) Prog states that an invariant enables progress if it enables a further transition step. Pres expresses that the invariant is preserved by the step relation. It is clear that a progressive and preserved invariant that holds for the initial state guarantees safety, which they state in the \coinduction theorem": Inv(s 0) Prog(Inv) Pres(Inv) Safe(s 0) Assuming progression and preservation of Inv globally, the theorem can be re-formulated as Inv(s 0) s 0 7 ! s 0 9s 00 :s 0 7 ! s 00 This is easily proven by induction on s 0 7 ! s 0 : Case s 0 = s 0 : Immediately by Prog(Inv).

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An exercise in coinduction: Moessner’s theorem

We present a coinductive proof of Moessner’s theorem. This theorem describes the construction of the stream (1n, 2n, 3n, . . .) (for n ≥ 1) out of the stream of natural numbers by repeatedly dropping and summing elements. Our formalisation consists of a direct translation of the operational description of Moessner’s procedure into the equivalence of in essence two functional programs. Our proof...

متن کامل

CIRC: A Behavioral Verification Tool Based on Circular Coinduction

CIRC is a tool for automated inductive and coinductive theorem proving. It includes an engine based on circular coinduction, which makes CIRC particularly well-suited for proving behavioral properties of infinite data-structures. This paper presents the current status of the coinductive features of the CIRC prover, focusing on new features added over the last two years. The presentation is by e...

متن کامل

Moessner's Theorem: An Exercise in Coinductive Reasoning in Coq

Moessner’s Theorem describes a construction of the sequence of powers (1, 2, 3, . . . ), by repeatedly dropping and summing elements from the sequence of positive natural numbers. The theorem was presented by Moessner in 1951 without a proof and later proved and generalized in several directions. More recently, a coinductive proof of the original theorem was given by Niqui and Rutten. We presen...

متن کامل

Coinductive Verification of Program Optimizations Using Similarity Relations

Formal verification methods have gained increased importance due to their ability to guarantee system correctness and improve reliability. Nevertheless, the question how proofs are to be formalized in theorem provers is far from being trivial, yet very important as one needs to spend much more time on verification if the formalization was not cleverly chosen. In this paper, we develop and compa...

متن کامل

Iterative Circular Coinduction for CoCasl in Isabelle/HOL

Coalgebra has in recent years been recognized as the framework of choice for the treatment of reactive systems at an appropriate level of generality. Proofs about the reactive behavior of a coalgebraic system typically rely on the method of coinduction. In comparison to ‘traditional’ coinduction, which has the disadvantage of requiring the invention of a bisimulation relation, the method of cir...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000